The present invention relates to a method for allocating a bandwidth between a plurality of network terminals coupled, via a common link, to a main network station, in a communication network. It also relates to a network including a medium access controller adapted to perform the method as defined above.
European patent application 0 544 975 describes a time slot management system for a time division multiple access system including a main station and a plurality of user stations via the cascade connection of a common transmission link and an individual user link. Information concerning the bandwidths respectively required for further transfer of upstream information packets by the user stations are upstream transmitted to the main station by means of dedicated time slots. Registration means, located in the main station, store values indicative of said required bandwidths to have them converted in corresponding occurrences of identities, said identities being downstream transmitted from the main station to the user stations. Each user station is allowed to transfer a predetermined amount of information packets to the main station upon detection of its own identity among downstream information. Such a management system does not differentiate among different service categories pertaining to different packets the network terminals want to transfer to the main station and the bandwidths requested by network terminals correspond to peak rates.
European patent application 0 957 654 describes a method to assign upstream time slots to a network terminal in a communication network including a central station and a plurality of network terminals coupled by means of a cascade connection of a common link and of terminal links. Network terminals transmit upstream data packets to the central station over the common link using time slots assigned to them by means of a downstream bitstream of network terminal grants generated by a medium access controller included in the network. Upstream data packets are classified in accordance associated service categories within network terminals and they are stored in storage queues according to their respective categories. A grant related to a network terminal includes a plurality of queue grants each associated to a respective storage queue within the terminal, each queue grant enabling the said terminal to transfer a predetermined amount of upstream data packets from its corresponding storage queue. The rate of the queue grant bitstream, composed of succeeding occurrences of said queue grants, is determined from at least one parameter of a parameter set associated to the corresponding storage queue and from at least one parameter of a parameter set associated to another storage queue within any of the network terminals. However, this method is not as versatile as needed when applied to a network in which actual needed bandwidth changes are frequently forwarded from the network terminals to the central station and when accordingly an efficient use of the total available bandwidth is required.
A third method for allocating or sharing a bandwidth between several network terminals in a network including a main station by allowance of permits, or grants, forwarded from the main station to the network terminals is to generate a stream of simple permits. Each permit corresponds to a share of the bandwidth. Upon detection by a network terminal of its own identifier included in a permit, the network terminal is allowed to transfer a packet comprising a predetermined amount of information. Each network terminal cyclically forward to the main station indications concerning its required bandwidth or its load status. These indications are converted by the main station in corresponding permits. A basic example of an algorithm that can be used in this third method for generating permits, is for example to define a counter for each network terminal in the main station, each counter having an associated increment value and an associated maximum. A stack or queue is included in the main station for storing permits. Every time a permit must be forwarded to the network, the main station is programmed to firstly trigger all the counters by adding to them their associated increments and in the event a counter exceeds the maximum, stacking a permit in the stack and decreasing the counter with the maximum, and secondly extracts one permit of the stack and forwards it to the network terminals.
The sharing of the available bandwidth can be modified by recalculation of the different increments, e.g. smaller increments, when no excess bandwidth is available in order to reduce the rate of permits, and bigger increments for network terminals in overload, when excess bandwidth is available. This is practicable as long as the recalculation of the bandwidth share only needs to be executed when a new network terminal is installed. However, when efficient use of the total available bandwidth is required and the network terminals frequently forward actual needed bandwidth changes, recalculation of the increments becomes too complex. In the following parts, the terms used will be the terms given in the explanation of the above third method.